"""
#冒泡排序  原理：便利循环，通过位置索引进行位置调换，进行排序，正序或倒序
import random
#定义一个函数
def sort():
    # 定义一个列表，并随机存入五个值
    arr = [random.randint(1, 10) for n in range(5)]
    print(arr)#输出列表内容
    n = len(arr)

    for i in range(n):
        # 每次遍历只处理未排序的部分
        for j  in range(0,n-i-1):
            # 如果前一个元素比后一个元素大，则交换它们的位置
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
        return  arr
    return arr


if __name__ == '__main__':
    print(sort())
"""
#列表，元组，集合，字典 增删改查
"""
#列表
list = ["apple",1,{1,2}]    #定义列表
print(list)
print(list[-1]) #输出列表最后一项
print(list[0:2]) #从第0个开始输出两个
list[1] = "mango"#将第二个元素改为mango
print(list)
for x in list: #将列表中所有项目
    print(x)
print(len(list)) #打印列表一共存在的项目数
list.append(1) #将1追加至列表
print(list)
list.insert(1,"7")#将"7"插入值第二位
print(list)
list.pop()#随机删除
list.remove("7")#删除指定的内容
del list[2]#指定删除第三位内容
list.clear()#清空列表
list1 = list.copy()#复制列表内容至list1
"""


#元组
"""
tuple = ("apple",1,{1,2})#定义元组
print(tuple)
print(tuple[1])#打印第二个元素
print(tuple[-1])#打印最后一个元素
print(tuple[0:2])#从第一位开始打印打印两位
print(len(tuple))#打印元组长度
del tuple#删除整个元组
"""

"""


#集合
set = {"apple",1}#定义集合
print(set)
set.add("orange")#单个增加内容
set.update(["mango",2])#多个增加内容
print(len(set))#输出内容个数
set.discard("apple")#删除单个内容
set.pop()#随机删除
set.clear()#清空内容
del set#删除整个集合
print(set)
"""


"""

#字典
thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}#定义字典
print(thisdict)
thisdict["year"] = 2019#修改字段
thisdict["color"] = "red"#增加键和值
thisdict.pop("model")#删除

print(thisdict)
"""



"""
class Animal:
    def eat(self):
        print("吃")
    def drink(self):
        print("喝")
    def sleep(self):
        print("睡觉")

class Dog(Animal):
    def bark(self):
        print("汪汪叫")

if __name__ == "__main__":
  dog = Dog()
  dog.eat()
  dog.drink()
  dog.bark()
  dog.sleep()
"""


"""
需求
1.设计一个Game 类
2.属性:
定义一个 类属性 top_score 记录游戏的 历史最高分定义一个 实例属性 player _name 记录 当前游戏的玩家姓名
3.方法:
静态方法 show help 显示游戏帮助信息
类方法 show top score 显示历史最高分
实例方法 start game 开始当前玩家的游戏
4.主程序步骤
  1.查看帮助信息
  2.查看历史最高分
  3.创建游戏对象，开始游戏
  4.统计所有实例化游戏的数量
"""
"""
class Game:
  __instances__ = 0
  top_score = 0
  def __init__(self, player_name):
        self.player_name = player_name
        Game.__instances__ += 1

  @staticmethod
  def show_help():
      print("游戏帮助信息:")

  @classmethod
  def show_top_score(cls):
        print("历史最高分:", cls.top_score)

  def start_game(self):
        print(f"欢迎{self.player_name}开始游戏")
        score = int(input("请输入你的得分："))
        if score > Game.top_score:
            Game.top_score = score
            print("恭喜你，你破了历史最高分！")
        else:
            print("很遗憾，你没有破记录！")


# 主程序
if __name__ == '__main__':
  Game.show_help()
  print("历史最高分:", Game.top_score ,"\n")

  game1 = Game("张三")
  game2 = Game("李四")
  game3 = Game("王五")

  game1.start_game()
  game2.start_game()
  game3.start_game()

  print("总共实例化了", Game.__dict__["__instances__"], "个游戏对象")
"""

#定义Animal动物类，具有吃肉eat的方法，喝drink的方法，睡觉sleep的方法定义狗Dog继承了动物类，具有汪汪叫bark的方法
#狗 去调用吃的方法
#狗 去调用喝的方法
"""
class Animal():
    def eat(self):
        return "吃粑粑"
    def drink(self):
        return "喝小水儿"
    def sleep(self):
        return "睡狗窝"
class Dog(Animal):
    def bark(self):
        return "汪汪"
print(Dog().eat())
print(Dog().drink())
"""
"""
需求
\1.设计-个 Game 类
\2.属性:
    定义一个 类属性 top_score 记录游戏的 历史最高分定义一个 实例属性 player _name 记录 当前游戏的玩家姓名
\3.方法:
    静态方法 show help 显示游戏帮助信息
    类方法 show top score 显示历史最高分
    实例方法 start game 开始当前玩家的游戏
4.主程序步骤
1.查看帮助信息
2.查看历史最高分
3.创建游戏对象，开始游戏
4.统计所有实例化游戏的数量
"""
class Game():
    top_score = 0
    num = 0
    def __init__(self):
        self.player_name = input("请输入您的游戏id:")
        Game.num+=1
    @staticmethod
    def show_help():
        print( "帮助信息:")

    @classmethod
    def show_top_score(cls):
        print(f"历史最高分:{cls.top_score}")

    def start_game(self):
        print(f"{self.player_name}！游戏开始！")

if __name__ == '__main__':
    game=Game()
    i = input("请输入你的操作：1:查看帮助文档 2:查看历史最高分 3:创建游戏对象，开始游戏 4:统计所有实例化游戏的数量")
    if i==1:
        game.show_help()
    elif i==2:
        game.show_top_score()
    elif i==3:
        game.start_game()
    elif i==4:
        pass
    print(f"所有实例化游戏的数量:{Game.num}")









